package cn.iocoder.yudao.module.asasc.controller.admin.campaign.vo;

import lombok.Data;

import java.util.List;

@Data
public class CampaignDataReqDTO {
    private String startTime;
    private String endTime;
    private String granularity;
    private Selector selector;
    private List<String> groupBy;
    private String timeZone;
    private boolean returnRecordsWithNoMetrics;
    private boolean returnRowTotals;
    private boolean returnGrandTotals;

    @Data
    public static class Selector {
        private List<OrderBy> orderBy;
        private List<Condition> conditions;
        private Pagination pagination;

        @Data
        public static class OrderBy {
            private String field;
            private String sortOrder;
        }

        @Data
        public static class Condition {
            private String field;
            private String operator;
            private List<String> values;
        }

        @Data
        public static class Pagination {
            private int offset;
            private int limit;
        }
    }
}
